home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / CIncludes / RTC.h < prev    next >
C/C++ Source or Header  |  1996-05-01  |  2KB  |  86 lines

  1. /*
  2.      File:        RTC.h
  3.  
  4.      Contains:    User-mode API
  5.  
  6.      Version:    Technology:    System 8
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __RTC__
  19. #define __RTC__
  20.  
  21. #ifndef __KERNEL__
  22. #include <Kernel.h>
  23. #endif
  24. #ifndef __TIMEOBJECTS__
  25. #include <TimeObjects.h>
  26. #endif
  27. #ifndef __SYNCHRONIZATION__
  28. #include <Synchronization.h>
  29. #endif
  30. #ifndef __IOITERATOR__
  31. #include <IOIterator.h>
  32. #endif
  33.  
  34. #ifdef __cplusplus
  35. extern "C" {
  36. #endif
  37.  
  38. #if PRAGMA_IMPORT_SUPPORTED
  39. #pragma import on
  40. #endif
  41.  
  42. #if PRAGMA_ALIGN_SUPPORTED
  43. #pragma options align=mac68k
  44. #endif
  45.  
  46. #if FOR_SYSTEM8_PREEMPTIVE
  47.  
  48. enum {
  49.     kRTCFamilyVersionOne        = 0x01,
  50.     kRTCFamilyCurrentVersion    = kRTCFamilyVersionOne
  51. };
  52.  
  53. typedef struct OpaqueRTCTimerID* RTCTimerID;
  54. struct RTCIOIteratorData {
  55.     IOCommonInfo                     IOCI;
  56.     UInt32                             reserved[3];
  57. };
  58. typedef struct RTCIOIteratorData RTCIOIteratorData;
  59.  
  60. extern OSStatus RTCCancelTimer(RTCTimerID timerID);
  61.  
  62. extern OSStatus RTCSetTimer(const KernelNotification *notifier, RTCTimerID *timerID, Nanoseconds nanoseconds);
  63.  
  64. extern OSStatus RTCSet(Nanoseconds nanoseconds);
  65.  
  66. extern OSStatus RTCGet(Nanoseconds *nanoseconds);
  67.  
  68. extern OSStatus RTCGetDeviceData(ByteCount want, ByteCount *got, RTCIOIteratorData *deviceArray);
  69.  
  70. #endif
  71.  
  72. #if PRAGMA_ALIGN_SUPPORTED
  73. #pragma options align=reset
  74. #endif
  75.  
  76. #if PRAGMA_IMPORT_SUPPORTED
  77. #pragma import off
  78. #endif
  79.  
  80. #ifdef __cplusplus
  81. }
  82. #endif
  83.  
  84. #endif /* __RTC__ */
  85.  
  86.